package cn.pdx.elec.dao.impl;

import java.util.List;

import org.springframework.stereotype.Repository;

import cn.pdx.elec.dao.ElecSystemDDlDao;
import cn.pdx.elec.domain.ElecSystemDDl;




/**
 * @Repository 、@Service 和 @Controller 
     在目前的 Spring 版本中，这 3 个注释和 @Component 是等效的，但是从注释类的命名上，3 个注释分别和持久层 、业务层 和控制层 相对应。
* @author 彭定旭
 *
 */
@Repository(ElecSystemDDlDao.SERVICE_NAME)
public class ElecSystemDDlDaoImpl extends CommonDaoImpl<ElecSystemDDl> implements ElecSystemDDlDao {

	

	/**
	 * @Name:findKeyWord
	 * @Description:查询数据类型列表，去掉重复
	 * @author 彭定旭
	 * @version：v1.00（版本号）
	 * @Create Date:2013-3-30(创建日期)
	 * @parameters:
	 * @return:List<ElecSystemDDl>数据类型列表
	 */
	@SuppressWarnings("unchecked")
	public List<Object> findKeyWord() {
		
		String hql="SELECT DISTINCT o.keyword from ElecSystemDDl o";
		
		List<Object> list=this.getHibernateTemplate().find(hql);
		
		return list;
	}

	
	/**
	 * @Name:findDDlName
	 * @Description:用数据类型和数据项的编号获取数据项的名称,ElecUserServiceImpl中用到了
	 * @author 彭定旭
	 * @version：v1.00（版本号）
	 * @Create Date:2013-4-3(创建日期)
	 * @parameters:String ddlCode 数据项编号
	 *             String keyword  数据类型
	 * @return:String 数据项名称
	 */
	public String findDDlName(String ddlCode, String keyword) {
		
		String hql="from ElecSystemDDl where keyword='"+ keyword+"' and ddlCode='"+ ddlCode+"'";
		
		@SuppressWarnings("unchecked")
		List<ElecSystemDDl> list=this.getHibernateTemplate().find(hql);
		
		String ddlName="";
		
		if(list!=null && list.size()>0)
		{
			ElecSystemDDl elecSystemDDl=list.get(0);
			ddlName=elecSystemDDl.getDdlName();
		}
		return ddlName;
	}


	
	
}
